23.05.28
오늘 한 일
- 알고리즘 문제 풀이
- 카공실록 리뷰 작성페이지 구현 / 리팩토링
- 함수형 프로그래밍 스터디 공부
- 블로그 글 쓰기
- 디지털콘텐츠기획 ppt 작성
- 리액트 스터디 SPA 구현
- nest.js 강의
함수형 프로그래밍 스터디 공부 8주차
챕터 13 - 함수형 도구 체이닝
체인을 명확하게 만들기
- 단계에 이름 붙이기
- 고차 함수를 함수로 분리하여 이름 붙임
-> 함수 이름을 통해 체인의 각 단계를 명확하게 표현할 수 있음
- 콜백에 이름 붙이기
- 중첩 콜백을 함수로 분리하여 이름 붙임
-> 재사용하기 좋아짐
- 두 방법을 비교
- 어떤 방법이 더 좋은지 코드를 비교해 결정하기
스트림 결합
- map()과 filter(), reduce() 체인을 최적화하는 것 대부분의 경우에는 여러 단계를 사용하는 것이 더 명확하고 읽기 쉽다! 병목이 생겼을 때만 쓰는 것이 좋음
반복문을 함수형 도구로 리팩터링하기
전략 1. 이해하고 다시 만들기
전략 2. 단서를 찾아 리팩터링
팁 1. 데이터 만들기
데이터를 배열에 넣으면 함수형 도구를 쓸 수 있음
팁 2. 한 번에 전체 배열을 조작하기
고차 함수들은 배열 전체에 동작하기 때문에 함수형 도구 쓸 수 있음
기존 반복문을 함수형 도구로 바꾸어 조작하기
팁 3. 작은 단계로 나누기
인덱스를 가지고 반복하고 있는 경우엔 팁 1을 적용하여 인덱스 배열을 만들고, 팁 2를 적용하여 함수형 도구를 사용하기
체이닝 디버깅을 위한 팁
- 구체적인 것을 유지하기
- 각 단계에서 어떤 걸을 하고 있는지 알기 쉽게 이름을 잘 지어야 함
- 출력해보기
- 각 단계 사이에 print 구문을 넣어 코드 돌려보아 예상대로 동작하는지 확인할 수 있음
- 타입을 따라가 보기
- 함수형 도구는 타입이 있어 각 단계를 지나는 값의 타입을 따라가 보기
내일 할 일
- 알고리즘 문제 풀이
- 학교 시험 공부(알고리즘, 소프트웨어공학)
- 익스텐션 새로운 기능 기획, 옵션 페이지 구현
- 카공실록 리뷰 작성 페이지 구현 마무리
- 리액트 SPA 구현
- nest.js 강의
- 블로그 글 쓰기